package main

import (
	logger "github.com/sirupsen/logrus"
	user "go-web-demo/biz/user/domain/controller"
	"go-web-demo/config/cache"
	"go-web-demo/config/db"
	"go-web-demo/config/gin"
	"go-web-demo/config/http"
	"go-web-demo/config/log"
	vc "go-web-demo/config/viper"
)

func main() {
	initComponents()
}

// initComponents 初始化服务组件
func initComponents() {
	// 初始化日志
	log.InitLogConfig()
	logger.Info("===================================================================================")
	logger.Info("Starting Application")
	// 读取本地配置文件
	vc.InitLocalConfigFile()
	// 初始化url配置
	//url.InitUrlConfig()
	// 初始化Mysql
	db.InitDbConfig()
	// 初始化缓存
	cache.InitBigCacheConfig()
	// 初始化Redis
	//redis.InitRedisConfig()
	// 初始化HttpClient连接池
	http.InitHttpClientConfig()
	// 初始化Jwt
	//jwt.InitJwtConfig()

	// 初始化Gin
	router := gin.InitGinConfig()
	// 注册Api
	user.UserApi(router)
	// 启动Gin
	gin.RunGin(router)
}
